python prototype pattern